using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;using Maxleaf.EDI.Domain.K3;

namespace Maxleaf.EDI.DataAccess.K3
{
    public class t_AcntMap : EntityTypeConfiguration<t_Acnt>
    {
        public t_AcntMap()
        {
            // Primary Key
            this.HasKey(t => t.FAcntID);

            // Properties
            this.Property(t => t.FAcntID)
                .HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);

            this.Property(t => t.FAcnt)
                .IsRequired()
                .HasMaxLength(50);

            this.Property(t => t.FAcntNo)
                .HasMaxLength(50);

            this.Property(t => t.FBank)
                .HasMaxLength(80);

            // Table & Column Mappings
            this.ToTable("t_Acnt");
            this.Property(t => t.FAcntID).HasColumnName("FAcntID");
            this.Property(t => t.FAcctID).HasColumnName("FAcctID");
            this.Property(t => t.FAcnt).HasColumnName("FAcnt");
            this.Property(t => t.FAcntNo).HasColumnName("FAcntNo");
            this.Property(t => t.FBank).HasColumnName("FBank");
            this.Property(t => t.FClientID).HasColumnName("FClientID");
            this.Property(t => t.FInt).HasColumnName("FInt");
            this.Property(t => t.FAllowOD).HasColumnName("FAllowOD");
            this.Property(t => t.FRateType).HasColumnName("FRateType");
            this.Property(t => t.FRateDays).HasColumnName("FRateDays");
            this.Property(t => t.FRate).HasColumnName("FRate");
            this.Property(t => t.FTZRateType).HasColumnName("FTZRateType");
            this.Property(t => t.FTZRateDays).HasColumnName("FTZRateDays");
            this.Property(t => t.FTZRate).HasColumnName("FTZRate");
            this.Property(t => t.FOpenDate).HasColumnName("FOpenDate");
            this.Property(t => t.FDeleted).HasColumnName("FDeleted");
            this.Property(t => t.FDelDate).HasColumnName("FDelDate");
            this.Property(t => t.FLastIntDate).HasColumnName("FLastIntDate");
            this.Property(t => t.FTZLastIntDate).HasColumnName("FTZLastIntDate");
            this.Property(t => t.FOppAcctID).HasColumnName("FOppAcctID");
            this.Property(t => t.FIntAcctID).HasColumnName("FIntAcctID");
            this.Property(t => t.FODAcctID).HasColumnName("FODAcctID");
            this.Property(t => t.FARIntAcctID).HasColumnName("FARIntAcctID");
            this.Property(t => t.FPayIntMethod).HasColumnName("FPayIntMethod");
            this.Property(t => t.FLastPreCalDate).HasColumnName("FLastPreCalDate");
            this.Property(t => t.FTzLastPreCalDate).HasColumnName("FTzLastPreCalDate");
            this.Property(t => t.FOutRptAcctID).HasColumnName("FOutRptAcctID");
            this.Property(t => t.FLeaveBal).HasColumnName("FLeaveBal");
            this.Property(t => t.FAcntStyle).HasColumnName("FAcntStyle");
            this.Property(t => t.FMise).HasColumnName("FMise");
            this.Property(t => t.FMiseBaseFund).HasColumnName("FMiseBaseFund");
            this.Property(t => t.FMiseRateType).HasColumnName("FMiseRateType");
            this.Property(t => t.FMiseRateDays).HasColumnName("FMiseRateDays");
            this.Property(t => t.FMiseRate).HasColumnName("FMiseRate");
            this.Property(t => t.FOverDueAcctID).HasColumnName("FOverDueAcctID");
            this.Property(t => t.FMinBalance).HasColumnName("FMinBalance");
            this.Property(t => t.FIntTaxRateType).HasColumnName("FIntTaxRateType");
            this.Property(t => t.FIntCalMethod).HasColumnName("FIntCalMethod");
            this.Property(t => t.FRelFundPlan).HasColumnName("FRelFundPlan");
            this.Property(t => t.FFrameWorkID).HasColumnName("FFrameWorkID");
            this.Property(t => t.FAutoTransfer).HasColumnName("FAutoTransfer");
            this.Property(t => t.FTransBound).HasColumnName("FTransBound");
            this.Property(t => t.FTransMin).HasColumnName("FTransMin");
            this.Property(t => t.FTransAcctID).HasColumnName("FTransAcctID");
        }
    }
}
